
module evict_mem 
#(
parameter NUM_WAY   = 4,            // NUM_WAY = 2**WAY_WIDTH,
parameter SET_WIDTH = 10           // SET_WIDTH=ADDR_MEM_WIDTH - ADDR_CACHE_WIDTH - WAY_WIDTH,
)

//----------------------------------------------------
//IO port declarations
//----------------------------------------------------
(
    input   clk,
    input   rst,
    input   valid_arb2tag,
    output  ready_arb2tag,

    input   [SET_WIDTH-1:0]         set_mem,   // Main memory address
    input   [31:0]                  data_i,    // Data written to memory
    output  [31:0]                  data_o    // Data written to memory
);


//----------------------------------------------------
//Wire and reg declarations
//----------------------------------------------------


//-----------------------------------------------------
// Memory implementation 
//-----------------------------------------------------

//Implemmentation of memory for replacement policies 
sim_mem_2p #(.ADDR_WIDTH(SET_WIDTH),.DATA_WIDTH(32),.DEPTH(2**SET_WIDTH)) replace_ifo_mem 
(   
    .clk (clk),
    .ce0 (1'b1),
    .a0  (set_mem),
    .do0 (do_ifo_mem),
    .ce1 (1'b1),
    .we1 (1'b1),
    .a1  (),
    .di1 () 
);


endmodule 